package controller;

 
import java.util.ArrayList;
import java.util.List;
import java.util.Map;

import javax.validation.Valid;

import org.springframework.stereotype.Controller;
import org.springframework.validation.BindingResult;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;

import entity.Dept;
import entity.Users;

@Controller
@RequestMapping("/")
public class UserController {

	@GetMapping("update.html")
	public String load(Map map){
		//做修改第一步 一般都是先根据id查询得到一个实体类 然后到页面去显示到文本框
		//模拟查询了一个
		Users user=new Users("", "男", 19,  2);   //2号是财务部
		map.put("user", user);
		
		//模拟查询所有的部门
		List list=new ArrayList(){{
			add(new Dept(1,"技术部"));
			add(new Dept(2,"财务部"));
			add(new Dept(3,"销售部"));
			add(new Dept(4,"人力资源部"));
		}};
		
		map.put("depts", list);
		 
		
		return "index.jsp";
	}
	
	@PostMapping("update.html")
	public String load2(@Valid @ModelAttribute("user") Users user,BindingResult br,Map map){
		//做修改第一步 一般都是先根据id查询得到一个实体类 然后到页面去显示到文本框
		//模拟查询了一个
//	  System.out.println("修改成功");
		
		map.put("user", user);
		
		//模拟查询所有的部门
		List list=new ArrayList(){{
			add(new Dept(1,"技术部"));
			add(new Dept(2,"财务部"));
			add(new Dept(3,"销售部"));
			add(new Dept(4,"人力资源部"));
		}};
		
		map.put("depts", list);
		 //如果有验证过不了 进入的页面
		if(br.hasErrors()){
			return "index.jsp";
	    }
	  
		return "index.jsp";
	}
	
}
